home *** CD-ROM | disk | FTP | other *** search
GW-BASIC | 1984-04-24 | 1.9 KB | 53 lines |
- 2999 RUNITSTR$ = "DIRECT"
- 3000 REM this program will demonstrate the play statement for the pc
- 3010 REM set initial octave -- 2 = 1 octave below middle c
- 3020 REM the type of notes -- normal, legato, staccato
- 3030 REM the tempo -- no quarter notes per second?
- 3040 O$="o2mnt84" ' normal octave
- 3050 OM1$="o1mnt84" ' down 1 octave
- 3060 OP1$="o3mnt84" ' up 1 octave
- 3070 GOSUB 3090
- 3075 LOCATE 22,1,0 : PRINT STRING$(40,255)
- 3077 IF RUNITSTR$ = "direct" THEN END
- 3078 IF RUNITSTR$ = "DIRECT" THEN END
- 3080 RETURN ' to musica
- 3090 REM subroutine to play music from data statements
- 3100 RCNT = 0
- 3110 RESTORE
- 3120 GOSUB 3220 ' skip some measures if required
- 3130 READ A$
- 3150 IF (A$ = "tocoda") AND (RCNT = 0) THEN 3130
- 3160 IF (A$ = "tocoda") AND (RCNT = 1) THEN GOSUB 3300
- 3170 IF (A$ = "repeat") AND (RCNT = 0) THEN RCNT = 1 : RESTORE : GOTO 3130
- 3180 IF (A$ = "repeat") AND (RCNT = 1) THEN A$ = "end"
- 3190 IF A$ = "end" THEN 3330
- 3200 PLAY A$
- 3210 GOTO 3130
- 3220 REM skip data measures
- 3225 LOCATE 23,5,0
- 3230 INPUT "Enter measure to start with";MNO
- 3250 FOR I = 1 TO MNO - 1
- 3260 READ A$
- 3265 IF A$ = "end" THEN GOTO 3290
- 3280 NEXT I
- 3290 RETURN
- 3300 REM skip to coda subroutine
- 3310 READ A$
- 3320 IF A$ <> "coda" THEN GOTO 3310 ELSE READ A$ : RETURN
- 3330 RETURN
- 3340 DATA "p4p4","xo$;d-4mld-4mne-8","xom1$;b-2p8b-8"
- 3350 DATA "xo$;c4mlc4mnxom1$;b-8","a-4xo$;c2","xom1$;b-4mlb-4mnxo$;c8"
- 3360 DATA "mlxom1$;b-8g2mnb-8","a-4a-4b-4","xo$;mlc4c2","mne-4mld-4c8mn"
- 3370 DATA "xom1$;b-2p8b-8","xo$;c4c4xom1$;b-4","a-4xo$;c4c8"
- 3380 DATA "xom1$;b4b4xo$;c4","d2mlc8xom1$;bmn","xo$;d4d4e-4","mlf2f16mnp8xom1$;b-8"
- 3390 DATA "xo$;mlg2g4mn","p64g4a-4b-4","mlg2g4mn","p64g4a-4b-4","mlg2g4mn"
- 3400 DATA "e4f4g4","p64a-2p8f8","a-4b-4xop1$;c4xo$;","mla-2a-4mn"
- 3410 DATA "p64a-4b-4f4","tocoda","mlg2g4","g4mnp8a-8","mlf2f4","f4mnp8p8"
- 3420 DATA "repeat"
- 3430 DATA "coda","xo$;mlg2g4mn","p64mlb2b4mn","xop1$;mlc2c4mn","p64c4c4c4"
- 3440 DATA "xo$;mlb-2p64b-8g8mn","g4g4f4","mle-2e-4","e-4mnp64c4"
- 3450 DATA "xom1$;mlb-2b-4","b-8b-16","b-16mnp64b-4"
- 3460 DATA "xo$;msa-4g4mlf5g32f32e-32msd32mn","mle-2e-4","e-4e-8","e-16e-32","e-64mnp8p8"
- 3470 DATA "end"
- 3480 DATA "end"
-